﻿using System.Collections;

namespace Core.Blocker
{
    /// <summary>
    /// 阻塞接口，用于实现阻塞和等待解除阻塞的功能。
    /// </summary>
    public interface IBlocker
    {
        /// <summary>
        /// 等待解锁。
        /// 该方法返回一个 IEnumerator，用于协程中等待阻塞解除。
        /// </summary>
        /// <returns>IEnumerator，用于协程等待。</returns>
        IEnumerator WaitUnblocked();

        /// <summary>
        /// 解锁
        /// </summary>
        void Unblock();
    }
}